package com.online.edu.course.entity.Vo;

import com.baomidou.mybatisplus.annotation.TableLogic;
import com.online.edu.course.entity.Chapter;
import com.online.edu.course.entity.ChapterPeriod;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

@Data
@ApiModel("章节封装类")
public class ChapterVo {

    @ApiModelProperty("Id")
    private Long id;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private LocalDateTime gmtCreate;

    /**
     * 修改时间
     */
    @ApiModelProperty("修改时间")
    private LocalDateTime gmtModified;

    /**
     * 状态(1:正常，0:禁用)
     */
    @ApiModelProperty("状态(1:正常，0:禁用)")
    private Integer statusId;

    /**
     * 排序
     */
    @ApiModelProperty("排序")
    private Integer sort;

    /**
     * 课程ID
     */
    @ApiModelProperty("课程ID")
    private Long courseId;

    /**
     * 章节名称
     */
    @ApiModelProperty("章节名称")
    private String chapterName;

    /**
     * 章节描述
     */
    @ApiModelProperty("章节描述")
    private String chapterDesc;

    /**
     * 是否免费：1免费，0收费
     */
    @ApiModelProperty("是否免费：1免费，0收费")
    private Integer isFree;

    /**
     * 原价
     */
    @ApiModelProperty("原价")
    private BigDecimal chapterOriginal;

    /**
     * 优惠价
     */
    @ApiModelProperty("优惠价")
    private BigDecimal chapterDiscount;

    /**
     * 逻辑状态(新增)
     */
    @ApiModelProperty("逻辑状态(0:正常；1:删除")
    @TableLogic
    private Integer logicalState;

    /**
     * 课时列表
     */
    @ApiModelProperty("课时表")
    private List<ChapterPeriod> chapterPeriod;
}
